Import and Export in Blockchain Environments

ABSTRACT

Importation and exportation allows software services in blockchain environments. Blockchains may import data and export data, thus allowing blockchains to offer software services to clients (such as other blockchains). Individual users, businesses, and governments may create their own blockchains and subcontract or outsource operations to other blockchains. Moreover, the software services provided by blockchains may be publically ledgered by still other blockchains, thus providing two-way blockchain interactions and two-way ledgering for improved record keeping.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application relates to U.S. application Ser. No. ______ filed May18, 2018, entitled “Private Cryptocoinage in Blockchain Environments”(Attorney Docket Factom #10), and incorporated herein by reference inits entirety. This application also relates to U.S. application Ser. No.______ filed May 18, 2018, entitled “Load Balancing in BlockchainEnvironments” (Attorney Docket Factom #11), and incorporated herein byreference in its entirety. This application also relates to U.S.application Ser. No. ______ filed May 18, 2018, entitled “PersonalBlockchain Services” (Attorney Docket Factom #13), and incorporatedherein by reference in its entirety. This application also relates toU.S. application Ser. No. ______ filed May 18, 2018, entitled “PrivateBlockchain Services” (Attorney Docket Factom #14), and incorporatedherein by reference in its entirety.

BACKGROUND

Blockchain usage is growing. As cryptographic blockchain gainsacceptance, improved techniques are needed to provide greater recordkeeping.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

The features, aspects, and advantages of the exemplary embodiments areunderstood when the following Detailed Description is read withreference to the accompanying drawings, wherein:

FIGS. 1-8 are simplified illustrations of importation and exportation ina blockchain environment, according to exemplary embodiments;

FIGS. 9-12 are more detailed illustrations of an operating environment,according to exemplary embodiments;

FIGS. 13-17 illustrate a blockchain data layer, according to exemplaryembodiments;

FIGS. 18-19 illustrate a service warehouse, according to exemplaryembodiments;

FIGS. 20-21 illustrate a virtual computing environment, according toexemplary embodiments;

FIG. 22 illustrates allocations based on the blockchain data layer,according to exemplary embodiments;

FIG. 23 illustrates a service environment, according to exemplaryembodiments;

FIGS. 24-25 illustrate web access, according to exemplary embodiments;

FIG. 26 illustrates a public entity, according to exemplary embodiments;

FIG. 27 is a flowchart illustrating a method or algorithm for serviceprocessing, according to exemplary embodiments; and

FIGS. 28-29 depict still more operating environments for additionalaspects of the exemplary embodiments.

DETAILED DESCRIPTION

The exemplary embodiments will now be described more fully hereinafterwith reference to the accompanying drawings. The exemplary embodimentsmay, however, be embodied in many different forms and should not beconstrued as limited to the embodiments set forth herein. Theseembodiments are provided so that this disclosure will be thorough andcomplete and will fully convey the exemplary embodiments to those ofordinary skill in the art. Moreover, all statements herein recitingembodiments, as well as specific examples thereof, are intended toencompass both structural and functional equivalents thereof.Additionally, it is intended that such equivalents include bothcurrently known equivalents as well as equivalents developed in thefuture (i.e., any elements developed that perform the same function,regardless of structure).

Thus, for example, it will be appreciated by those of ordinary skill inthe art that the diagrams, schematics, illustrations, and the likerepresent conceptual views or processes illustrating the exemplaryembodiments. The functions of the various elements shown in the figuresmay be provided through the use of dedicated hardware as well ashardware capable of executing associated software. Those of ordinaryskill in the art further understand that the exemplary hardware,software, processes, methods, and/or operating systems described hereinare for illustrative purposes and, thus, are not intended to be limitedto any particular named manufacturer.

As used herein, the singular forms “a,” “an,” and “the” are intended toinclude the plural forms as well, unless expressly stated otherwise. Itwill be further understood that the terms “includes,” “comprises,”“including,” and/or “comprising,” when used in this specification,specify the presence of stated features, integers, steps, operations,elements, and/or components, but do not preclude the presence oraddition of one or more other features, integers, steps, operations,elements, components, and/or groups thereof. It will be understood thatwhen an element is referred to as being “connected” or “coupled” toanother element, it can be directly connected or coupled to the otherelement or intervening elements may be present. Furthermore, “connected”or “coupled” as used herein may include wirelessly connected or coupled.As used herein, the term “and/or” includes any and all combinations ofone or more of the associated listed items.

It will also be understood that, although the terms first, second, etc.may be used herein to describe various elements, these elements shouldnot be limited by these terms. These terms are only used to distinguishone element from another. For example, a first device could be termed asecond device, and, similarly, a second device could be termed a firstdevice without departing from the teachings of the disclosure.

FIGS. 1-8 are simplified illustrations of importation and exportation ina blockchain environment 20, according to exemplary embodiments. FIG. 1illustrates a first server 22 generating a first blockchain 24 and asecond server 26 generating a second blockchain 28. As the reader mayunderstand, the first blockchain 24 may integrate or chain one or morecryptographically hashed blocks 30 of data, timestamps, and other data.The block 30 of data is enlarged for clarity. The first blockchain 24may thus be an open, distributed ledger 32 that records transactions forvalidation and distribution.

Here, though, exemplary embodiments permit an importation 34. That is,exemplary embodiments allow blockchains to import data from otherblockchains. FIG. 1 illustrates a simple example in which the singleblock 30 of data is imported by the second server 26 and/or the secondblockchain 28. The second server 26, for example, calls or retrieves thesingle block 30 of data as an input to the second blockchain 28. Thesecond server 26 may submit a request 36 for importation to the firstblockchain 24. The request 32 for importation may include an importspecification 38 that specifies inputs, parameters, or other informationrequired of input data (such as an identifier of the single block 30 ofdata). The first server 22 retrieves the single block 30 of data andsends the single block 30 of data as a response to the second server 26and/or the second blockchain 28. The second server 26 may then act onthe single block 30 of data imported from the first blockchain 24.Moreover, the second server 26 may even apply another layer ofcryptographic hashing, thus linking or chaining the single block 30 ofdata to an entry or block within the second blockchain 28. The secondblockchain 28, in other words, confirms or verifies the importation ofthe single block 30 of data from the first blockchain 24.

FIG. 2 illustrates an exportation 40. Here exemplary embodiments mayconvert the single block 30 of data into a different format. When thesecond server 26 sends the request 36 for importation, the importationspecification 38 may specify a format 42 for input data. When the firstserver 22 retrieves the single block 30 of data, the first server 22 mayperform a file or format conversion 44 to satisfy the format 40specified by the importation specification 38. The first server 22 hasthus reformatted or converted the single block 30 of data to comply withthe format 42 specified by the importation specification 38. Once theconversion 42 is complete, the first server 22 sends a reformattedversion 46 of the single block 30 of data to the second server 26,perhaps as a response to the request 36 for importation. The firstserver 22 may additionally or alternatively push the reformatted version46 of the single block 30 of data to the second server 26. Regardless,the second server 26 may then process the reformatted version 46 for anypurpose or function. As a simple example, the second server 26 mayintegrate the reformatted version 46 (imported from the first blockchain24) into the second blockchain 28. Exemplary embodiments may thus linkor chain the reformatted version 46 to the second blockchain 28.

FIG. 3 illustrates functional subcontracting. Here exemplary embodimentsmay export or outsource any data or information for performance orapplication of a software function. Suppose, for example, that thesecond blockchain 28 is associated with a software service 50 performedby the second server 26. The second server 26 and/or the secondblockchain 28, in other words, offers or advertises the software service50 to other blockchains (such as the first blockchain 24 generated bythe first server 22). The software service 50 may require that inputdata satisfy a source specification 52 that specifies inputs,parameters, or other information that is required of input data toperform the software service 50. When the first blockchain 24 requiresor desires the software service 50, the first server 22 sends a servicerequest 54 for the service, and the service request 54 may include orspecify input data. Again, as a simple example, suppose the firstblockchain 24 desires to submit the single block 30 of data to thesoftware service 50. The first server 22 may thus retrieve and send thesingle block 30 of data to the second server 26. When the second server26 receives the service request 54, the second server 26 applies thesoftware service 50 to the block 30 of data sent from the firstblockchain 24. When the software service 50 is complete, the secondserver 26 sends a service result 56 back to the first server 22. Theservice result 56 contains data or information describing an outcome,calculation, or value resulting from the software service 50 applied tothe single block 30 of data. The first server 22 may then integrate theservice result 56 (perhaps imported from the second blockchain 28) intothe first blockchain 24. Again, then, either or both of the firstblockchain 24 and the second blockchain 28 document the service result56 generated by the software service 50.

FIG. 4 illustrates a compensation scheme. When the second blockchain 28provides the software service 50, the second blockchain 28 may becompensated for performing the software service 50. That is, the secondserver 26 and/or the second blockchain 28 executes the software service50 in exchange for some kind of compensation 60. While the compensation60 may be a conventional currency, FIG. 4 illustrates cryptocurrencies(or “cryptocoinage”) 62 and 64. That is, the first server 22 and thesecond server 36 may exchange electronic tokens, coins, or other formsof the cryptocurrencies 62 and 64. The compensation 60 may then berecorded as a transaction or block of data within the first blockchain24 and/or the second blockchain 28. The first server 22 and/or thesecond server 26 may thus generate an accounting 66 in response to theservice result 56 generated by the second blockchain 28. Moreover,either or both of the first blockchain 24 and the second blockchain 28may also document the accounting 66 in response to the service result56.

FIG. 5 illustrates public documentation. When the second server 26provides or performs the software service 50, here exemplary embodimentsmay publically document the software service 50. As the second server 26performs the software service 50, the second server 26 may generate oneor more data records 70 within a blockchain data layer 72. The secondserver 26 may thus be called or termed a data layer server 74 thatgenerates the blockchain data layer 72, as later paragraphs willexplain. Moreover, the second server 26 may also add another layer ofcryptographic hashing to generate one or more cryptographic proofs 76.The cryptographic proofs 76 may then be incorporated into the secondblockchain 28. While either or both of the first blockchain 24 and thesecond blockchain 28 may be private and/or access restricted, here thedata layer server 74 may publically publish or distribute the secondblockchain 28 (such as via the Internet). The second blockchain 28 maythus be a public blockchain 78 that serves or acts as a validationservice 80 for the software service 50 (perhaps described by the datarecords 70 within the blockchain data layer 72). The public blockchain78 thus publishes the cryptographic proofs 76 to confirm that thesoftware service 50 was performed. The cryptographic proof 76, in otherwords, acts as a data anchor 82 in the public blockchain 78 to documentthe date and time that the software service 50 was executed to generatethe service result 56. The public blockchain 78 thus acts as a publicledger that establishes chains of blocks of immutable evidence. Eachcryptographic proof 76 thus provides evidentiary documentation of thesoftware service 50.

FIG. 6 applies the importation 34 and the exportation 40 to privateblockchains. Here exemplary embodiments may be applied to blockchainsgenerated by, or associated with, private entities. While any privateentity may create a private blockchain 90, FIG. 6 illustrates a privateperson or user. For simplicity, suppose a user 92 (“Mary”) uses hermobile device 94 (such as her smartphone 96) to generate a personal,private blockchain 90. As the reader likely understands, Mary may useher smartphone 96 for social postings (such as FACEBOOK® and)INSTAGRAM®, for text messaging, for calls, for Internet searches, forbanking transactions, and for many other tasks and reasons. Mary'ssmartphone 96 thus generates much private data 98 reflecting its usage(date/time, location, software application, and key strokes). Mary'ssmartphone 96 may thus execute a mobile application 100 that encryptsthe private data 98 and generates her personal, private blockchain 90.Suppose, then, that her personal blockchain 90 requires the softwareservice 50 provided by the second blockchain 28. Mary's smartphone 96may thus generate and send the service request 54 to the second server26 for application or performance of the software service 50. Mary'ssmartphone 96 may also identify and/or send source or input data 102associated with the software service 50. The second server 26 appliesthe source or input data 102 to the software service 50 provided by thesecond blockchain 28 and sends the service result 56 back to Mary'ssmartphone 96. Mary's smartphone 96 may then integrate the serviceresult 56 (perhaps imported from the second blockchain 28) into herpersonal blockchain 90. Moreover, the second server 26 may generate thedata records 70 (associated with the blockchain data layer 72)describing the software service 50, add another layer of cryptographichashing, generate the cryptographic proof 76, and incorporate thecryptographic proof 76 into the public blockchain 78. Again, then, thepublic blockchain 78 publishes the cryptographic proof 76 asconfirmation that the software service 50 was performed. Thecryptographic proof 76 again acts as the anchor 82 to document immutableevidence of the software service 50. Mary may also compensate the datalayer server 74 and/or the public blockchain 78 for documenting thesoftware service 50.

FIG. 7 illustrates nesting over time. As the first server 22 generatesthe first blockchain 24, multiple times the software service 50 maydesired. FIG. 7 thus illustrates a timeline 104 of interactions betweenthe first blockchain 24 and the second blockchain 28. As the firstblockchain 24 propagates in time, there may be many instances in whichthe software service 50 is requested. FIG. 7 thus illustrates a simpleexample in which at approximately time t₁ (perhaps from an initial time0) the first blockchain 24 sends the service request 54 a. The secondblockchain 28 executes the software service 50 and at approximately timet₂ the service result 56 a is sent to the first blockchain 24. Thesecond server 22, acting as the data layer server 74, may then generatethe data records 70 of the blockchain data layer 72 that document theservice result 56 a. Moreover, the second server 22 may publicallypublish the cryptographic proof 76 a within the public blockchain 78,thus further documenting immutable evidence of the service result 56 a.

The software service 50 may be repeatedly called. Each time the firstblockchain 24 requires the software service 50, the first blockchain 24may invoke the service mechanism. For example, suppose at approximatelytime t₃ the first blockchain 24 again sends the service request 54 b fora second application or performance of the software service 50. Atapproximately time t₄ the service result 56 b is generated and sent backto the first blockchain 24. Exemplary embodiments may then generate thedata records 70 of the blockchain data layer 72 that document theservice result 56 b and/or publically publish the cryptographic proof 76b within the public blockchain 78, again documenting immutable evidenceof the service result 56 b. Later, at approximately time t₅, the firstblockchain 24 may again send the service request 54 c for a thirdapplication or performance of the software service 50. At approximatelytime t₆ the service result 56 c is generated and sent back to the firstblockchain 24, data records 70 are generated, and the cryptographicproof 76 c may be publically published within the public blockchain 78to document the service result 56 c. Moreover, the first server 22 mayalso generate blocks of data within the first blockchain 24 thatadditionally document each service request 54a-c and each service result56 a-c. The first blockchain 24 and the second blockchain 28 may thuscontain blocks of data that link, relate, or intertwine blocks of datadocumenting each invocation of the software service 50.

FIG. 8 further illustrates nesting of blockchains over time. As more andmore businesses implement blockchain technology into their recordkeeping activities, vendors and suppliers will offer blockchains thatspecialize in different software services 50. Moreover, otherblockchains will compete to offer the same or similar software services50. FIG. 8 thus further applies the importation 34, the exportation 40,and/or the software service 50 in a supplier or subcontractorenvironment. That is, the software service 50 may be applied to anyentity, perhaps in a subscription or other compensation scheme. Suppose,for example, that a financial server 110 a is operated on behalf of abank, lender, or other financial institution (such as PIMCO®, CITI®, orBANK OF AMERICA®). As the reader likely understands, the financialinstitution creates a massive amount of banking records, transactionrecords, mortgage instruments, and other private data 98 a. Thefinancial server 110 a executes a software application (not shown forsimplicity) that hashes its private data 98 a and generates its privateblockchain 112 a. When the financial server 110 a and/or the privateblockchain 112 a require the software service 50, at approximately timet₁ the service request 54a is sent and at approximately time t₂ theservice result 56 a is sent to the financial server 110 a and/or theprivate blockchain 112 a. The data layer server 74 may then generate thedata records 70 of the blockchain data layer 72 that document theservice result 56 a. Moreover, the second server 22 may publicallypublish the cryptographic proof 76 a within the public blockchain 78,thus further documenting immutable evidence of the service result 56 a.The financial server 110 a may also generate blocks of data 114a withinthe private blockchain 112 a that also document the service request 54aand the service result 56 a.

The software service 50 may be offered to other entities. Suppose that aretailer (such as HOME DEPOT®, KOHL'S®, or WALMART®) operates a retailerserver 110 b that hashes its private data 98 b and generates its privateblockchain 112 b. When the retailer server 110 b and/or the privateblockchain 112 b require the software service 50, at approximately timet₃ the service request 54 b is sent and at approximately time t₄ theservice result 56 b is sent back to the retailer server 110 b and/or theprivate blockchain 112 b. The data layer server 74 may generate the datarecords 70 that document the service result 56 b, and the cryptographicproof 76 b may be published within the public blockchain 78. Theretailer server 110 b may also generate blocks of data 114 b within theprivate blockchain 112 b that also document the service request 54 b andthe service result 56 b. Similarly, an online server 110 c offering anonline service (such as AMAZON®, NETFLIX®, or GOOGLE®) hashes itsprivate data 98 c and generates its private blockchain 112 c. When theonline server 110 c and/or the private blockchain 112 c require thesoftware service 50, at approximately time t₅ the service request 54 cis sent and at approximately time t₆ the service result 56 c is sentback to the online server 110 c and/or the private blockchain 112 c. Thedata layer server 74 may generate the data records 70 that document theservice request 54 c and/or the service result 56 c, and thecryptographic proof 76 c may be published within the public blockchain78. The online server 110 c may also generate blocks of data 114 cwithin the private blockchain 112 c that also document the servicerequest 55 c and the service result 56 c.

Exemplary embodiments thus describe elegant solutions. Blockchains mayimport data and export data in desired formats. Blockchains may offerand advertise software services 50, and blockchains may specialize indifferent software services and/or functions that perform or accomplishparticular tasks. A marketplace may thus develop for vendors ofdifferent software services 50, perhaps accessible using avendor-specific or service-specific software application that isdownloaded or accessed via a web interface. Moreover, exemplaryembodiments allow individual users and other private entities to createtheir own private blockchains using their private data 98 and restrictits distribution, if desired. Cryptographic publication provides apublic witness via the anchor(s) 82 to the public blockchain 78.Exemplary embodiments thus provide importation and exportation schemesfor hybrid two-way blockchain interactions and two-way ledgering forimproved record keeping.

FIGS. 9-12 are more detailed illustrations of an operating environment,according to exemplary embodiments. FIG. 9 illustrates the first server22 communicating with the second server 26 via a communications network120. The first server 22 operates on behalf of any entity (such as theprivate user 92 illustrated in FIG. 6 or the entity servers 110 a-cillustrated in FIG. 7). Whatever the entity, the first server 22generates the first blockchain 24. The first server 22, in other words,has a processor 122 (e.g., “μP”), application specific integratedcircuit (ASIC), or other component that executes a software application124 stored in a local memory device 126. The first server 22 has anetwork interface to the communications network 120, thus allowingtwo-way, bidirectional communication with the second server 26. Theentity's software application 124 includes instructions, code, and/orprograms that cause the first server 22 to perform operations, such ascalling, invoking, and/or applying an electronic representation of ahashing algorithm 128 to the entity's private data 98. The hashingalgorithm 128 thus generates one or more hash values 130, which may beincorporated into the blocks 30 of data within the first blockchain 24.

The software service 50 may be required. When the first server 22 and/orthe entity's blockchain 24 needs the software service 50, the softwareapplication 124 instructs the first server 22 to generate and send theservice request 54 via the communications network 120 to any networkaddress (such as an Internet protocol address) associated with thesoftware service 50. Suppose, for example, that the software service 50is executed by the second server 26. The second server 26 has aprocessor 132 (e.g., “μP”), application specific integrated circuit(ASIC), or other component that executes a service application 134stored in a local memory device 136. The second server 26 has a networkinterface to the communications network 120. The service application 134includes instructions, code, and/or programs that cause the secondserver 26 to perform operations, such as receiving the service request54, generating the service result 56, and generating the secondblockchain 28. The service application 134 may then call or invoke thenetwork interface and send the service result 56 via the communicationsnetwork 120 to the network address (such as an Internet protocoladdress) associated with the first server 22 and/or the entity'sblockchain 24.

FIG. 10 illustrates the blockchain data layer 72. Here second server 26may additionally generate the blockchain data layer 72, thus perhapssimultaneously functioning as the data layer server 74. Exemplaryembodiments may thus combine or co-locate the software service 50 andthe blockchain data layer 72 for improved servicing and record keeping.The service application 134 may thus call, invoke, or cooperate with adata layer application 140 (perhaps as a software module). The datalayer application 140 includes instructions, code, and/or programs thatcause the processor 132 to perform operations, such as creating the datarecords 70 associated with the blockchain data layer 72. The datarecords 70 may comprise data or information representing the servicerequest 54, service result 56, and/or their corresponding hash values130. Moreover, the data layer application 140 may itself call, invoke,and/or apply the electronic representation of the hashing algorithm 128to the data records 70, which may be incorporated into the public orprivate blockchain 28 and 78.

FIG. 11 further illustrates the blockchain data layer 72. Here the datalayer server 74 may be a separate network element or component thatgenerates the blockchain data layer 72. For example, when the firstserver 22 requests the software service 50, the software application 124may instruct the first server 22 to copy and send the service request 54via the communications network 120 to the network address (such as anInternet protocol address) associated with the data layer server 74. Thesecond server 26 may additionally or alternatively copy and send theservice request 54 to the data layer server 74. When the serviceapplication 134 generates the service result 56, the second server 26may copy and send the service result 56 to the data layer server 74. Thefirst server 22 may additionally or alternatively copy and send theservice result 56 to the data layer server 74. Regardless, the datalayer server 74 has a processor 142 (e.g., “μP”), application specificintegrated circuit (ASIC), or other component that executes the datalayer application 140 stored in a local memory device 144. The datalayer server 74 has a network interface to the communications network120. The data layer application 140 includes instructions, code, and/orprograms that cause the data layer server 74 to perform operations, suchas creating the data records 70 associated with the blockchain datalayer 72. The data records 70 may comprise data or informationrepresenting the service request 54, service result 56, and/or theircorresponding hash values 130. Moreover, the data layer application 140may itself call, invoke, and/or apply the electronic representation ofthe hashing algorithm 128 to the data records 70, which may beincorporated into the public or private blockchain 28 and 78.

Exemplary embodiments may thus cooperate in a client/server fashion. Thefirst server 22, the second server 26, and/or the data layer server 74may cooperate to send, receive, and/or generate the service request 54,the service result 56, and/or the data records 70 associated with theblockchain data layer 72. The software application 124, the serviceapplication 134, and/or the data layer application 140 may likewisecooperate to send, receive, and/or generate the service request 54, theservice result 56, and/or the data records 70 associated with theblockchain data layer 72. Indeed, the mobile application 100(illustrated in FIG. 6) may also cooperate to send, receive, and/orgenerate the service request 54, the service result 56, and/or the datarecords 70 associated with the blockchain data layer 72.

FIG. 12 illustrates additional publication mechanisms. Once theblockchain data layer 72 is generated, the blockchain data layer 72 maybe published in a decentralized manner to any destination. The datalayer server 74, for example, may generate and distribute the publicblockchain 78 (via the communications network 120 illustrated in FIGS.9-11) to one or more federated servers 146. While there may be manyfederated servers 146, for simplicity FIG. 12 only illustrates two (2)federated servers 146 a and 146 b. The federated servers 146 a and 146 bprovide a service and, in return, they are compensated according to acompensation or services agreement or scheme.

Exemplary embodiments include still more publication mechanisms. Forexample, the cryptographic proof 76 and/or the public blockchain 78 maybe sent (via the communications network 120 illustrated in FIGS. 9-11)to a server 147. The server 147 may then add another, third layer ofcryptographic hashing (perhaps using the hashing algorithm 128) andgenerate another or second public blockchain 148. While the server 147and/or the public blockchain 148 may be operated by, or generated for,any entity, exemplary embodiments may integrate another cryptographiccoin mechanism. That is, the server 147 and/or the public blockchain 148may be associated with BITCOIN®, ETHEREUM®, RIPPLE®, or othercryptographic coin mechanism. The cryptographic proof 76 and/or thepublic blockchain 148 may be publically distributed and/or documented asevidentiary validation. The cryptographic proof 76 and/or the publicblockchain 148 may thus be historically and publically anchored forpublic inspection and review.

Exemplary embodiments may be applied regardless of networkingenvironment. Exemplary embodiments may be easily adapted to stationaryor mobile devices having cellular, wireless fidelity (WI-FI®), nearfield, and/or BLUETOOTH® capability. Exemplary embodiments may beapplied to mobile devices utilizing any portion of the electromagneticspectrum and any signaling standard (such as the IEEE 802 family ofstandards, GSM/CDMA/TDMA or any cellular standard, and/or the ISM band).Exemplary embodiments, however, may be applied to anyprocessor-controlled device operating in the radio-frequency domainand/or the Internet Protocol (IP) domain. Exemplary embodiments may beapplied to any processor-controlled device utilizing a distributedcomputing network, such as the Internet (sometimes alternatively knownas the “World Wide Web”), an intranet, a local-area network (LAN),and/or a wide-area network (WAN). Exemplary embodiments may be appliedto any processor-controlled device utilizing power line technologies, inwhich signals are communicated via electrical wiring. Indeed, exemplaryembodiments may be applied regardless of physical componentry, physicalconfiguration, or communications standard(s).

Exemplary embodiments may utilize any processing component,configuration, or system. Any processor could be multiple processors,which could include distributed processors or parallel processors in asingle machine or multiple machines. The processor can be used insupporting a virtual processing environment. The processor could includea state machine, application specific integrated circuit (ASIC),programmable gate array (PGA) including a Field PGA, or state machine.When any of the processors execute instructions to perform “operations,”this could include the processor performing the operations directlyand/or facilitating, directing, or cooperating with another device orcomponent to perform the operations.

Exemplary embodiments may packetize. When any device or servercommunicates via the communications network 120, the device or servermay collect, send, and retrieve information. The information may beformatted or generated as packets of data according to a packet protocol(such as the Internet Protocol). The packets of data contain bits orbytes of data describing the contents, or payload, of a message. Aheader of each packet of data may contain routing informationidentifying an origination address and/or a destination address.

FIGS. 13-17 further illustrate the blockchain data layer 72, accordingto exemplary embodiments. The blockchain data layer 72 chains hasheddirectory blocks 150 of data into the public blockchain 78. For example,the blockchain data layer 72 accepts input data (such as the servicerequest 54 illustrated in FIGS. 3-11) within a window of time. While thewindow of time may be configurable from fractions of seconds to hours,exemplary embodiments use ten (10) minute intervals. FIG. 12 illustratesa simple example of only three (3) directory blocks 150 a-c of data, butin practice there may be millions or billions of different blocks. Eachdirectory block 150 of data is linked to the preceding blocks in frontand the following or trailing blocks behind. The links are created byhashing all the data within a single directory block 150 and thenpublishing that hash value within the next directory block.

As FIG. 14 illustrates, published data may be organized within chains152. Each chain 152 is created with an entry that associates acorresponding chain identifier 154. Each entity's blockchain, in otherwords, may have its corresponding chain identifier 154 a-d. Theblockchain data layer 72 may thus track any data associated with theentity with its corresponding chain identifier 154 a-d. New and old datain time may be associated with, linked to, identified by, and/orretrieved using the chain identifier 154 a-d. Each chain identifier 154a-d thus functionally resembles a directory 156 a-d (e.g., files andfolders) for organized data entries according to the entity.

FIG. 15 illustrates the data records 70 in the blockchain data layer 72.As data is received as an input (such as the blockchain(s) 24, 28, 78,90, and/or 112 illustrated in FIGS. 1-8), data is recorded within theblockchain data layer 72 as an entry 160. While the data may have anysize, small chunks (such as 10 KB) may be pieced together to createlarger file sizes. One or more of the entries 160 may be arranged intoentry blocks 162 representing each chain 152 according to thecorresponding chain identifier 154. New entries for each chain 152 areadded to their respective entry block 162 (again perhaps according tothe corresponding chain identifier 154). After the entries 160 have beenmade within the proper entry blocks 162, all the entry blocks 162 arethen placed within in the directory block 150 generated within oroccurring within a window 164 of time. While the window 164 of time maybe chosen within any range from seconds to hours, exemplary embodimentsmay use ten (10) minute intervals. That is, all the entry blocks 162generated every ten minutes are placed within in the directory block150.

FIG. 16 illustrates cryptographic hashing. The data layer server 74executes the data layer application 140 to generate the data records 70in the blockchain data layer 72. The data layer application 140 may theninstruct or cause the data layer server 74 to execute the hashingalgorithm 128 on the data records 70 (such as the directory block 150explained with reference to FIGS. 13-15). The hashing algorithm 128 thusgenerates one or more hash values 166 as a result, and the hash values166 represent the hashed data records 70. As one example, the blockchaindata layer 72 may apply a Merkle tree analysis to generate a Merkle root(representing a Merkle proof 76) representing each directory block 150.The blockchain data layer 72 may then publish the Merkle proof 76 (asthis disclosure explains).

FIG. 17 illustrates hierarchical hashing. Any entity may use itssoftware application 124 to hash its private data 98 to provide a firstlayer 170 of cryptographic hashing and generates the private blockchain90/112. Any blocks of data within the private blockchain 90/112 may besent to a destination associated with the software service 50 (such asthe data layer server 74). The data layer server 74 may thus execute theservice application 134 to provide the service result 56. The data layerserver 74 may also execute the data layer application 140 and generatethe data records 70 in the blockchain data layer 72. The data layerapplication 140 may optionally provide a second or intermediate layer172 of cryptographic hashing to generate the cryptographic proof 76. Thedata layer application 140 may also publish any of the data records 70as the public blockchain 78, and the cryptographic proof 76 may or maynot also be published via the public blockchain 78. The publicblockchain 78 and/or the cryptographic proof 76 may be optionally sentto the server 147 as an input to yet another public blockchain 148(again, such as BITCOIN®, ETHEREUM®, or RIPPLE®) for a third layer 174of cryptographic hashing and public publication. The first layer 170 andthe second layer 172 thus ride or sit atop a conventional publicblockchain 148 (again, such as BITCOIN®, ETHEREUM®, or RIPPLE®) andprovide additional public and/or private cryptographic proofs 76.

Exemplary embodiments may use any hashing function. Many readers may befamiliar with the SHA-256 hashing algorithm. The SHA-256 hashingalgorithm acts on any electronic data or information to generate a256-bit hash value as a cryptographic key. The key is thus a uniquedigital signature. There are many hashing algorithms, though, andexemplary embodiments may be adapted to any hashing algorithm.

Exemplary embodiments may use any call mechanism. The service request54, for example, may specify or define the software service 50 as afunction, order, or subroutine name, perhaps along with formalparameters (perhaps as an application programming interface or API). Theservice request 54 may additionally or alternatively be a software orlanguage code construct (such as a JAVA® class and/or language key).

FIGS. 18-19 illustrate a service warehouse, according to exemplaryembodiments. Here the data layer server 74 may operate or function as aservice clearinghouse that organizes and/or manages multiple differentsoftware services 50 requested from client blockchains. As most readersare thought familiar with mobile computing, FIG. 18 again illustratesMary's smartphone 96 generating her personal, private blockchain 90.When the mobile application 100 requires or encounters the softwareservice 50, the mobile application 100 instructs the smartphone 96(e.g., its processor and memory device, not shown for simplicity) togenerate and send the service request 54 (via the communications network120 illustrated in FIGS. 9-11). When the data layer server 74 receivesthe service request 54, the service application 134 may cause the datalayer server 74 to inspect the service request 54 for a serviceidentifier 180. The service identifier 180 may be any alphanumericcombination, hash value, or other data/information that uniquelyidentifies the requested software service 50.

Exemplary embodiments may consult an electronic database 182 ofservices. Because the data layer server 74 may manage many differentsoftware services 50, the electronic database 182 of services may beimplemented to identify and/or perform the requested software service50. FIG. 18 illustrates the data layer server 74 locally storing thedatabase 182 of services, but the database 182 of services may beremotely stored and accessed via the communications network 120(illustrated in FIGS. 9-11). Regardless, the data layer server 74 mayquery the database 182 of services for a query parameter and identifythe corresponding software service 50.

FIG. 19 illustrates the electronic database 182 of services. Here thedatabase 182 of services may define assignments between blockchains 186and their corresponding service identifier 180. While the database 182of services may have any logical structure, FIG. 19 illustrates thedatabase 182 of services as a table 184 that maps, converts, ortranslates the service identifier 180 to its corresponding blockchain186. As a simple example, suppose the database 182 of servicesconfigured with entries that relate the service identifier 180 to itscorresponding chain ID 154. The service application 134 may instruct thedata layer server 74 to query for the service identifier 180 andidentify and/or retrieve the chain ID 154, a client application, anetwork or service address, or other indicator assigned to thecorresponding service identifier 180. The database 182 of services mayoptionally contain entries that relate hashed values of the entries.While FIG. 19 only illustrates a few entries, in practice the database182 of services may have many entries (perhaps hundreds or thousands)detailing a rich repository selection of software services 50.Regardless, once the blockchain 186 is identified, the serviceapplication 134 may direct or assign the service request 54 to theblockchain 186 for processing (as above explained).

FIGS. 20-21 illustrate a virtual computing environment, according toexemplary embodiments. Here the data layer server 74 may implementdifferent virtual machines 190, with each virtual machine 190implementing a software service 50. The data layer server 74 may providevirtual computing and/or virtual hardware resources to client devices,thus lending or sharing its hardware, computing, and programmingresources. The data layer server 74 thus operates or functions as avirtual, remote resource for providing the software services 50. WhileFIG. 20 only illustrates four (4) virtual machines 190 a-d, the numberor instantiations may be several or even many, depending on complexityand resources. Moreover, as a further simplification, assume that eachvirtual machine 190 a-d provides a different corresponding softwareservice 50 a-d. So, when the data layer server 74 receives the servicerequest 54, the service application 134 may cause the data layer server74 to inspect the service request 54 for the service identifier 180 andconsult the electronic database 182 of services.

FIG. 21 further illustrates the database 182 of services. Here thedatabase 182 of services may specify the virtual machine 190 thatperforms or executes the software service 50. The database 182 ofservices may thus be preconfigured or preloaded with entries that assignor associate each virtual machine 190 to its corresponding serviceidentifier 180. The service application 134 queries for the serviceidentifier 180 to identify the corresponding virtual machine 190.Exemplary embodiments may thus determine whether the service identifier180 matches or satisfies any of the entries specified by the database182 of services. FIG. 21 illustrates entries that map the serviceidentifier 180 to its corresponding virtual machine 190 (e.g., anaddress, processor core, identifier, or other indicator), the chain ID154, and other tabular information. Once the virtual machine 190 isidentified, the service application 134 may direct or assign the servicerequest 54 to the corresponding blockchain 186 for processing (as aboveexplained).

FIG. 22 illustrates allocations based on the blockchain data layer 72,according to exemplary embodiments. As this disclosure previouslyexplained, exemplary embodiments may generate the data records 70representing the blockchain data layer 72 (such as the entries 160,entry blocks 162, and/or the directory blocks 150 explained withreference to FIGS. 13-15). Exemplary embodiments may thus assign theblockchain (e.g., reference numerals 24, 28, 78, 90, 112, and/or 186above explained) and/or the virtual machine 190 that executes thesoftware service 50, based on the number of the entries 160, the entryblocks 162, and/or the directory blocks 150 generated within theblockchain data layer 72. For example, as the data records 70 aregenerated, the data layer server 74 may determine a rate 200 ofgeneration. That is, as the data records 70 are generated when or whileproviding the software service 50, exemplary embodiments may sum orcount the entries 160, the entry blocks 162, and/or the directory blocks150 that are generated over time (such as per second, per minute, orother interval). The service application 134 and/or the data layerapplication 140, for example, calls or initializes a counter having aninitial value (such as zero). At an initial time, the counter commencesor starts counting or summing the number of the entries 160, entryblocks 162, and/or the directory blocks 150 (generated within theblockchain data layer 72) that are commonly associated with or referencethe software service 50, the service request 54, and/or the serviceresult 56 (perhaps according to the chain ID 154, the virtual machine190, and/or the cryptocoinage 62 and 64 illustrated in FIG. 4). Thecounter stops counting or incrementing at a final time and exemplaryembodiments determine or read the final value or count. Exemplaryembodiments may then calculate the rate 220 of generation as the sum orcount over time and consult or query the electronic database 182 ofservices for the rate 220 of generation. The electronic database 182 ofservices may thus define entries that map or associate different rates220 of generation and/or ranges to their corresponding software services50 (such as the service identifier 180), blockchains 186, and/or virtualmachines 190. If the database 182 of services has an entry that matchesor satisfies the rate 220 of generation, exemplary embodiments identifythe corresponding software service 50, blockchain 186, and/or virtualmachine 190.

The rate 220 of generation may thus be a feedback mechanism. As thesoftware services 50 are requested, the rate 220 of generation of thedata records 70 may determine the blockchain (e.g., reference numerals24, 28, 78, 90, 112, and/or 186 above explained) and/or the virtualmachine 190 assigned adequate capacity or bandwidth. One of theblockchains (e.g., reference numerals 24, 28, 78, 90, 112, and/or 186above explained) and/or virtual machines 190, for example, may bereserved for software services 50 having a heavy, disproportionate, orabnormally large rate 220 of generation. Another of the blockchainsand/or virtual machines 190 may be reserved for software services 50having a medium, intermediate, or historically average rate 220 ofgeneration. Another blockchain and/or virtual machine 190 may bereserved for the software services 50 having a light, low, orhistorically below average rate 220 of generation. The rate 220 ofgeneration may thus be a gauge or measure of which blockchain, softwareservice 50, and/or virtual machine 190 is assigned the resources.

FIG. 23 illustrates a service environment, according to exemplaryembodiments. Here exemplary embodiments may provide many differentsoftware services 50 to many different blockchains 24. Here the datalayer server 74, for example, provides or manages the software services50 while also generating the blockchain data layer 72 as still anotherservice (such as the validation service 80 illustrated in FIGS. 5-6).The data layer server 74 may thus acts as a subcontractor or serviceprovider, perhaps in a subscription or other compensation scheme. Thefinancial server 110 a may thus send or forward its private blockchain112 a (generated from its private data 98 a) to the data layer server 74for application or execution of any software service 50 (perhapsinvoking the database 182 of services, as above explained). The datalayer server 74 may generate the data records 70 of the blockchain datalayer 72 that document the service result 56. Moreover, the data layerserver 74 may publically publish the cryptographic proof 76 within thepublic blockchain 78, thus further documenting immutable evidence of theservice result 56. The financial server 110 a may also generate blocks114a of data within the private blockchain 112 a that also document theservice request 54, the service result 56, and/or the software service50. The financial server 110 a may then pay or reward the data layerserver 74 in exchange for the software service 50 and/or the datarecords 70 in the blockchain data layer 72 (such as granting itscrytpocoinage 62\64).

The data layer server 74 may serve other blockchains. The retailerserver 110 b may send or forward its private blockchain 112 b (generatedfrom its private data 98 b) to the data layer server 74 for applicationor execution of any software service 50. The online server 110 c mayalso send or forward its private blockchain 112 c (generated from itsprivate data 98 c) to the data layer server 74 for application orexecution of any software service 50. The data layer server 74 maygenerate the data records 70 of the blockchain data layer 72 thatdocument each service result 56, and the data layer server 74 maypublically publish each cryptographic proof 76 within the publicblockchain 78, thus further documenting immutable evidence of eachservice result 56. The retailer server 110 b and the online server 110 cmay also generate their respective blocks 114 b-c of data within theirprivate blockchains 112 b-c that also document each service request 54,service result 56, and/or software service 50. The retailer server 110 band the online server 110 c may then pay or reward the data layer server74 via their respective crytpocoinage 62\64 b-c.

Exemplary embodiments thus describe elegant solutions. Blockchains mayimport data and export data in desired formats. Blockchains may offerand advertise software services 50, and blockchains may specialize indifferent software services and/or functions that perform or accomplishparticular tasks. A marketplace may thus develop for vendors ofdifferent software services 50, perhaps accessible using avendor-specific or service-specific software application that isdownloaded or accessed via a web interface. Moreover, exemplaryembodiments allow individual users and other private entities to createtheir own private blockchains using their private data 98 and restrictits distribution, if desired. Cryptographic publication provides apublic witness via the anchor(s) 82 to the public blockchain 78.Exemplary embodiments thus provide importation and exportation schemesfor hybrid two-way blockchain interactions and two-way ledgering forimproved record keeping.

FIGS. 24-25 illustrate web access, according to exemplary embodiments.Here exemplary embodiments may be accessed and configured via thecommunications network 120 (such as the Internet, as illustrated withreference to FIGS. 9-11). FIG. 24 thus illustrates the serviceapplication 134 and/or the data layer application 140 as asoftware-as-a-service offered by the secure data layer server 74. A usermay access the service application 134 and/or the data layer application140 to define the various parameters governing the software service 50.While exemplary embodiments may have any access mechanism, FIG. 24illustrates a web interface 230. That is, the service application 134and/or the data layer application 140 may be accessed via a webpage 232.The webpage 232 prompts the user to input or to select one or moreparameters governing the software service 50, the service application134, and/or the data layer application 140.

FIG. 25 further illustrates the web interface 230. Again, as mostreaders are thought familiar with mobile computing, FIG. 25 againillustrates Mary's smartphone 96 executing the mobile application 100(e.g., via its processor and memory device, not shown for simplicity).If the smartphone 96 correctly sends authentication credentials, thenthe smartphone 96 may utilize the web interface 230 to access the datalayer server 74, the blockchain data layer 72, the service application134, the data layer application 140, and/or the database 182 ofservices. The smartphone 96 executes a web browser and/or a mobileapplication to send a request 244 specifying an address or domain nameassociated with or representing the data layer server 74, the serviceapplication 134, and/or the data layer application 140. The webinterface 230 to the data layer server 74 thus sends the webpage 232 asa response, and the user's smartphone 96 downloads the webpage 232. Thesmartphone 96 has a processor and memory device (not shown forsimplicity) that causes a display of the webpage 232 as a graphical userinterface (or “GUI”) 246 on its display device 248. The GUI 246 maygenerate one or more prompts or fields for specifying the parametersdefining the data layer server 74, the blockchain data layer 72, theservice application 134, the data layer application 140, and/or thedatabase 182 of services. As one example, the webpage 232 may haveprompts or fields for specifying the entries in the electronic database182 of services. Once the parameters or entries are specified, thesoftware service 50 may commence operation.

FIG. 26 illustrates a public entity 250, according to exemplaryembodiments. Here exemplary embodiments may provide the software service50 to any city, state, or federal governmental agency. Indeed, thepublic entity 250 may also be a contractor, non-governmentalorganization, or other actor that acts on behalf of the governmentalagency. The public entity 250 operates its corresponding public server254 and applies its software application 256 to its public data 252 togenerate its governmental blockchain 258. The data layer server 74receives the governmental blockchain 258 and generates the blockchaindata layer 72. The data layer server 74 may also execute the serviceapplication 134 and/or the data layer application 140 to provide thesoftware service 50, as this disclosure explains.

FIG. 27 is a flowchart illustrating a method or algorithm for serviceprocessing, according to exemplary embodiments. The electronic privatedata 98 is generated (Block 300), hashed (Block 302), and incorporatedinto the private blockchain 112 (Block 304). The service request 54 isreceived by the data layer server 74 (Block 306) and the service result56 is generated (Block 308). The data records 70 in the blockchain datalayer 72 are generated (Block 310). The data records 70 in theblockchain data layer 72 may be hashed (Block 312) and incorporated intothe public blockchain 78 (Block 314), thus documenting the servicerequest 54, the service result 56, and the software service 50.

FIG. 28 is a schematic illustrating still more exemplary embodiments.FIG. 28 is a more detailed diagram illustrating a processor-controlleddevice 350. As earlier paragraphs explained, the service application 134and/or the data layer application 140 may partially or entirely operatein any mobile or stationary processor-controlled device. FIG. 28, then,illustrates the service application 134 and/or the data layerapplication 140 stored in a memory subsystem of the processor-controlleddevice 350. One or more processors communicate with the memory subsystemand execute either, some, or all applications. Because theprocessor-controlled device 350 is well known to those of ordinary skillin the art, no further explanation is needed.

FIG. 29 depicts other possible operating environments for additionalaspects of the exemplary embodiments. FIG. 29 illustrates the serviceapplication 134 and/or the data layer application 140 operating withinvarious other processor-controlled devices 350. FIG. 29, for example,illustrates that the entity's private software application 126 and/orthe data layer application 140 may entirely or partially operate withina set-top box (“STB”) (352), a personal/digital video recorder (PVR/DVR)354, a Global Positioning System (GPS) device 356, an interactivetelevision 358, a tablet computer 360, or any computer system,communications device, or processor-controlled device utilizing any ofthe processors above described and/or a digital signal processor(DP/DSP) 362. Moreover, the processor-controlled device 350 may alsoinclude wearable devices (such as watches), radios, vehicle electronics,clocks, printers, gateways, mobile/implantable medical devices, andother apparatuses and systems. Because the architecture and operatingprinciples of the various devices 350 are well known, the hardware andsoftware componentry of the various devices 350 are not further shownand described.

Exemplary embodiments may be applied to any signaling standard. Mostreaders are thought familiar with the Global System for Mobile (GSM)communications signaling standard. Those of ordinary skill in the art,however, also recognize that exemplary embodiments are equallyapplicable to any communications device utilizing the Time DivisionMultiple Access signaling standard, the Code Division Multiple Accesssignaling standard, the “dual-mode” GSM-ANSI Interoperability Team(GAIT) signaling standard, or any variant of the GSM/CDMA/TDMA signalingstandard. Exemplary embodiments may also be applied to other standards,such as the I.E.E.E. 802 family of standards, the Industrial,Scientific, and Medical band of the electromagnetic spectrum, BLUETOOTH, and any other.

Exemplary embodiments may be physically embodied on or in acomputer-readable storage medium. This computer-readable medium, forexample, may include CD-ROM, DVD, tape, cassette, floppy disk, opticaldisk, memory card, memory drive, and large-capacity disks. Thiscomputer-readable medium, or media, could be distributed toend-subscribers, licensees, and assignees. A computer program productcomprises processor-executable instructions for service processing inblockchain environments, as the above paragraphs explain.

While the exemplary embodiments have been described with respect tovarious features, aspects, and embodiments, those skilled and unskilledin the art will recognize the exemplary embodiments are not so limited.Other variations, modifications, and alternative embodiments may be madewithout departing from the spirit and scope of the exemplaryembodiments.

1. A method, comprising: receiving, by a blockchain, a service requestsent from a different blockchain, the service request specifying asoftware service provided by the blockchain; importing, by theblockchain, a block of data chained within the different blockchain;executing, by the blockchain, a service application to generate aservice result associated with the software service, the service resultbased on the block of data imported from the different blockchain; andsending, by the blockchain, the service result via the Internet to thedifferent blockchain as a response to the service request.
 2. The methodof claim 1, further comprising receiving a service identifier associatedwith the software service specified by the service request.
 3. Themethod of claim 1, further comprising formatting the service resultgenerated by the service application.
 4. The method of claim 1, furthercomprising exporting the block of data chained within the differentblockchain.
 5. The method of claim 1, further comprising transacting acryptocoinage in response to the service result associated with thesoftware service.
 6. The method of claim 1, further comprisinggenerating a cryptographic proof based on the service result associatedwith the software service.
 7. The method of claim 6, further comprisingintegrating the cryptographic proof in a public blockchain to documentthe service result associated with the software service.
 8. A system,comprising: a hardware processor; and a memory device, the memory devicestoring instructions, the instructions when executed causing thehardware processor to perform operations, the operations comprising:receiving a service request sent from a first blockchain, the servicerequest specifying a software service provided by a second blockchain;importing a block of data chained within the first blockchain; executinga service application to generate a service result associated with thesoftware service, the service result based on the block of data importedfrom the first blockchain; generating a data record in a blockchain datalayer documenting the service result based on the block of data importedfrom the first blockchain; and sending the service result via theInternet to the first blockchain as a response to the service request.9. The system of claim 8, wherein the operations further comprisereceiving a service identifier associated with the software servicespecified by the service request.
 10. The system of claim 8, wherein theoperations further comprise formatting the service result generated bythe service application.
 11. The system of claim 8, wherein theoperations further comprise exporting the block of data chained withinthe first blockchain.
 12. The system of claim 8, wherein the operationsfurther comprise transacting a cryptocoinage in response to the serviceresult associated with the software service.
 13. The system of claim 8,wherein the operations further comprise generating a cryptographic proofbased on the service result associated with the software service. 14.The system of claim 13, wherein the operations further compriseintegrating the cryptographic proof in a public blockchain to documentthe service result associated with the software service.
 15. A memorydevice storing instructions that when executed cause a hardwareprocessor to perform operations, the operations comprising: receiving aservice request sent from a first blockchain, the service requestspecifying a service identifier associated with a software service;importing a block of data chained within the first blockchain; queryingan electronic database for the service identifier specified by theservice request sent from the first blockchain, the electronic databaseelectronically associating blockchains to service identifiers includingthe service identifier specified by the service request sent from thefirst blockchain; identifying a second blockchain of the blockchains inthe electronic database, the second blockchain electronically associatedto the service identifier specified by the service request sent from thefirst blockchain; sending the block of data imported from the firstblockchain to the second blockchain identified by the electronicdatabase; receiving a service result generated by the second blockchainin response to executing a service application associated with thesoftware service on the block of data imported from the firstblockchain; generating a data record in a blockchain data layerdocumenting the service result generated by the second blockchain; andsending the service result via the Internet to the first blockchain as aresponse to the service request.
 16. The memory device of claim 15,wherein the operations further comprise identifying a virtual machine inthe electronic database that is electronically associated to the serviceidentifier specified by the service request sent from the firstblockchain.
 17. The memory device of claim 15, wherein the operationsfurther comprise assigning the second blockchain to the virtual machineidentified by the electronic database.
 18. The memory device of claim15, wherein the operations further comprise cryptographically hashingthe service result to generate a cryptographic proof associated with thesoftware service.
 19. The memory device of claim 18, wherein theoperations further comprise integrating the cryptographic proof in apublic blockchain to document the service result associated with thesoftware service.
 20. The memory device of claim 15, wherein theoperations further comprise exporting the block of data chained withinthe first blockchain.